/*
 * Surface.h
 *
 *  Created on: 15/07/2008
 *      Author: Samuk
 */

#ifndef SURFACE_H_
#define SURFACE_H_

#include <SDL.h>
#include <SDL_image.h>
#include <map>

class CSurface {
public:
	CSurface();
	virtual ~CSurface();

	static SDL_Surface* OnLoad(std::string File);

	static bool OnDraw(SDL_Surface* SurfDestino, SDL_Surface* SurfFonte, int X,
			int Y);
	static bool OnDraw(SDL_Surface* SurfDestino, SDL_Surface* SurfFonte, int X,
			int Y, int Xsrc, int Ysrc, int Wsrc, int Hsrc);

	static bool Transparent(SDL_Surface* SurfDestino, int R, int G, int B);
	static std::map<std::string, SDL_Surface*>* GetSurfaces();

};

#endif /* SURFACE_H_ */
